import Vue from "vue";
import Router from "vue-router";
import { constantRoutes } from "./routeMap";

const originalPush = Router.prototype.push;
Router.prototype.push = function push(location, onResolve, onReject) {
    if (onResolve || onReject) {
        return originalPush.call(this, location, onResolve, onReject);
    }
    return originalPush.call(this, location).catch((err) => err);
};
Vue.use(Router);
const createRouter = () =>
    new Router({
        mode: "hash",
        scrollBehavior: () => ({ y: 0 }),
        routes: constantRoutes,
    });
const router = createRouter();

// 重置路由
export function resetRouter() {
    const newRouter = createRouter();
    router.matcher = newRouter.matcher;
}
export default router;
